// 对象的循环引用

function fn() {
    //声明一个变量并将引用类型值赋给该变量时  此时引用次数为1
    // 定义对象时此时obj1 和obj2 引用次数为1
    const obj1 = {}
    const obj2 = {}

    // obj2 与 obj1 相互引用 两者引用次数加1  因此此时引用次数为2 
    obj1.name = obj2
    obj2.name = obj1

    return 'lg is a coder'
}

// 执行完函数  obj1 和 obj2 引用次数减1  次数obj1 和 obj2 引用次数为1  不为0不被回收
fn()
